package com.zx.flow.api.config;

import java.util.List;
import lombok.Data;

@Data
public class FlowConfigListener {

    /**
     * 监听触发的类型
     * {@link com.zx.flow.api.dict.FlowDict.ListenerType}
     */
    private String type;

    /**
     * 监听的事件
     * {@link com.zx.flow.api.dict.FlowDict.Event}
     */
    private List<String> events;

    /** 一：以下字段是http方式  **/
    /**
     * 是否重试次数
     */
    private Integer replay = 3;
    /**
     * 是否异步触发
     */
    private boolean async = false;

    /**
     * http接口地址，必须是post接口
     */
    private String url;

    /**
     * 连接超时时间，毫秒
     */
    private int connectionTimeout = 3000;

    /**
     * 访问超时时间
     */
    private int readTimeout = 3000;

    /**
     * 二：触发内置的消息模块
     **/
    private String wcId;
    private String ddId;
    private String fsId;
    private String smsId;
    /**
     * 三：触发内置mq模块
     **/
    /**
     * topic 内置了若干个公共的，所有人共用
     */
    private String mqTopic;
    /**
     * tag, 因为topic共用，用于区分自己的消息。
     */
    private String mqTag;
}
